<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui">

<ui:composition template="/templates/masterLayout.xhtml">

	<ui:define name="title">DEVOLUCION</ui:define>
	<ui:define name="content">

		<p:growl id="mensaje" showDetail="true" life="7000" />

		<p:panel id="panel" header="DEVOLUCION"
			style="margin-bottom:10px;height:150px;">

			<h:panelGrid columns="2" cellpadding="1">

				<h:form id="formCliente">
					<p:outputLabel value="CEDULA/NOMBRE:" styleClass="negrita" />
					<p:inputText readonly="true"
						value="#{devolucionBean.egreso.cliente.persona.cedula} - #{devolucionBean.egreso.cliente.persona.apellido} #{devolucionBean.egreso.cliente.persona.nombre}"
						style="width: 445px; position: relative; left: 8px;" />
				</h:form>

			</h:panelGrid>

			<h:form id="formDocumento">

				<h:panelGrid columns="4" cellpadding="1">

					<p:outputLabel value="LOCAL:" styleClass="negrita" />
					<p:inputText readonly="true"
						value="#{devolucionBean.egreso.local.nombre}" />

					<h:outputText value="DEVOLUCION Nº:" styleClass="negrita" />
					<p:inputText readonly="true"
						value="#{devolucionBean.egreso.codigodocumento}" />

					<h:outputText value="COMP. MODIFICA: " styleClass="negrita" />
					<p:inputText readonly="true" value="#{devolucionBean.compModifica}" />
				</h:panelGrid>

				<h:panelGrid columns="3" cellpadding="1"
					style="position: relative;left: 33px;">
					<p:commandButton value="GUARDAR"
						update=":formCliente, formDocumento, :formDataTable,  :formTotales, :mensaje"
						id="btnGuardar" icon="ui-icon-bookmark"
						actionListener="#{devolucionBean.insertarOrActualizar}" />

					<p:commandButton value="CANCELAR" id="btnlimpiar"
						update=":formCliente, formDocumento, :formDataTable, :formTotales"
						icon="ui-icon-close"
						actionListener="#{devolucionBean.cancelarTodo}" process="@this" />
				</h:panelGrid>
			</h:form>

			<h:form id="formTotales" style="height: 0px;">
				<h:panelGrid columns="2" cellpadding="0"
					style="position: relative;left: 687px;bottom: 130px;">

					<h:outputText styleClass="letrasGrandes" style="padding-left: 4px;"
						value="SUBTOTAL:" />
					<p:inputText readonly="true"
						value="#{devolucionBean.cantidadFacturaPresentar.subTotal}"
						styleClass="colorLetras txtFactura"
						style="font-size: 14px !important;	font-weight: bold;" />

					<h:outputText styleClass="letrasGrandes" value="IVA 12%:"
						style="padding-left: 8px;" />
					<p:inputText readonly="true"
						value="#{devolucionBean.cantidadFacturaPresentar.iva}"
						styleClass="colorLetras txtFactura"
						style="font-size: 14px !important;	font-weight: bold;" />

					<h:outputText styleClass="letrasGrandes" style="padding-left: 8px;"
						value="TOTAL:" />
					<p:inputText readonly="true"
						value="#{devolucionBean.cantidadFacturaPresentar.total}"
						styleClass="colorLetras txtFactura"
						style="font-size: 14px !important;	font-weight: bold;" />

				</h:panelGrid>
			</h:form>

		</p:panel>

		<h:form id="formDataTable">

			<p:dataTable id="tablaDetalleEgresos" var="facturaReporte"
				value="#{devolucionBean.facturaReportes}" paginator="true" rows="10"
				emptyMessage="#{msg['lbl.mensajeTabla']}" paginatorPosition="bottom"
				editable="true" editMode="cell">

				<f:facet name="header">
					<h:form style="margin-bottom: 8px">
						<p:commandButton update=":formNuevoProducto , :mensaje"
							oncomplete="PF('productoDialogoNuevo').show()" id="btnNuevo"
							icon="ui-icon-plus" value="INSERTAR PRODUCTO" />
					</h:form>
				</f:facet>

				<p:column headerText="GESTIONAR DEVOLUCION"
					style="text-align:center;width: 50px;">

					<p:commandButton id="btnEliminar" update=":formEliminar"
						oncomplete="PF('detalleEgresoDialogoEliminar').show()"
						icon="#{msg['iconoEliminar']}"
						disabled="#{!facturaReporte.eliminar}">
						<f:setPropertyActionListener value="#{facturaReporte}"
							target="#{devolucionBean.facturaReporte}" />
					</p:commandButton>

				</p:column>

				<p:column headerText="IVA" style="text-align:center;width: 1px;">  
            				#{facturaReporte.iva}
        				</p:column>

				<p:column headerText="CODIGO" filterBy="#{facturaReporte.codigo}"
					style="text-align:center;width: 50px;">
							 	#{facturaReporte.codigo}
						</p:column>

				<p:column headerText="DESCRIPCION"
					filterBy="#{facturaReporte.descripcion}"
					style="text-align:center;width: 50px;">
					<p:inputText id="nombre" value="#{facturaReporte.descripcion}"
						readonly="true" />
					<p:tooltip for="nombre" value="#{facturaReporte.descripcion}" />
				</p:column>

				<p:column headerText="CANTIDAD"
					style="text-align:center;width: 50px;">
					<h:outputText value="#{facturaReporte.cantidad} " />
				</p:column>

				<p:column headerText="P. UNIT."
					style="text-align:center;width: 50px;">
					<h:outputText value="#{facturaReporte.precioUnitVenta}" />
				</p:column>

				<p:column headerText="DESC" style="text-align:center;width: 50px;">  
            				#{facturaReporte.descuentoDolares}  
        				</p:column>

				<p:column headerText="IMPORTE"
					style="text-align:center;width: 50px;">  
            				#{facturaReporte.importe}  
        				</p:column>

			</p:dataTable>
		</h:form>

		<p:dialog widgetVar="detalleEgresoDialogoEliminar" severity="alert"
			header="SACAR PRODUCTO DE LA LISTA" showEffect="explode"
			hideEffect="explode" modal="false" resizable="false" width="300px"
			style="text-align: center;">
			<h:form id="formEliminar">
				<br />
				<p:outputLabel value="¿ ESTA SEGURO DE SACAR ESTE PRODUCTO ?" />
				<br />
				<br />
				<p:commandButton value="ACEPTAR"
					update=":formDataTable,:mensaje, :formTotales" icon="ui-icon-check"
					oncomplete="PF('detalleEgresoDialogoEliminar').hide()"
					actionListener="#{devolucionBean.eliminarDetalle}" />
				<p:commandButton value="CANCELAR" type="button"
					onclick="PF('detalleEgresoDialogoEliminar').hide()"
					icon="ui-icon-close" />
			</h:form>
		</p:dialog>

		<p:dialog header="INSERTAR PRODUCTO" widgetVar="productoDialogoNuevo"
			resizable="false" modal="fasle" showEffect="clip" hideEffect="fold"
			id="dialogoNuevo" style="width:720px !important" width="50%">

			<h:form id="formNuevoProducto">

				<p:focus context="formNuevoProducto" />

				<h:panelGrid columns="1" cellpadding="1">
					<p:dataTable id="tablaProductos" var="facturaReporte"
						value="#{devolucionBean.listaFacturaReporteDevolucion}"
						paginator="true" rows="7"
						emptyMessage="#{msg['lbl.mensajeTabla']}"
						paginatorPosition="bottom" rowKey="#{facturaReporte.productoId}"
						selection="#{devolucionBean.facturaReporte}"
						selectionMode="single" style="width:100%">

						<p:column headerText="IVA" style="text-align:center;width: 5%;">  
            				#{facturaReporte.iva}
        				</p:column>

						<p:column headerText="CODIGO" filterBy="#{facturaReporte.codigo}"
							style="text-align:center;width: 20%;">
							 	#{facturaReporte.codigo}
						</p:column>

						<p:column headerText="DESCRIPCION"
							filterBy="#{facturaReporte.descripcion}"
							style="text-align:center;width: 30%;">
							<p:inputText id="nombre" value="#{facturaReporte.descripcion}"
								readonly="true" />
							<p:tooltip for="nombre" value="#{facturaReporte.descripcion}" />
						</p:column>

						<p:column headerText="CANTIDAD"
							style="text-align:center;width: 50px;">
							<h:outputText value="#{facturaReporte.cantidad} " />
						</p:column>

						<p:column headerText="P. UNIT."
							style="text-align:center;width: 50px;">
							<h:outputText value="#{facturaReporte.precioUnitVenta}" />
						</p:column>

						<p:column headerText="DESC" style="text-align:center;width: 50px;">  
            				#{facturaReporte.descuentoDolares}  
        				</p:column>

						<p:column headerText="IMPORTE"
							style="text-align:center;width: 50px;">  
            				#{facturaReporte.importe}  
        				</p:column>

					</p:dataTable>
				</h:panelGrid>

				<h:panelGrid id="panelNuevo" columns="4" cellpadding="1">
					<h:outputText value="CANTIDAD: " />
					<p:inputText value="#{devolucionBean.cantidad}" required="true"
						requiredMessage="ESCOJA UNA CANTIDAD" style="width:80px">
					</p:inputText>

					<f:facet name="footer">
						<p:separator />
						<p:commandButton value="GUARDAR"
							update="formNuevoProducto,:formDataTable ,:mensaje, :formTotales"
							id="btnNuevoAceptar" icon="#{msg['iconoGuardar']}"
							actionListener="#{devolucionBean.insertarDetalle}"
							styleClass="centrarBotonesDialogos" />

						<p:commandButton value="CANCELAR"
							oncomplete="PF('productoDialogoNuevo').hide()"
							id="btnNuevolimpiar" icon="#{msg['iconoCancelar']}"
							actionListener="#{devolucionBean.cancelar}" process="@this"
							styleClass="centrarBotonesDialogos" />
					</f:facet>

				</h:panelGrid>

			</h:form>

		</p:dialog>

		<p:dialog header="IMPRIMIR" widgetVar="imprimir" resizable="false"
			modal="false" showEffect="clip" hideEffect="fold"
			id="dialogoImprimir">
			<h:form target="_blank">
				<p:commandButton value="SI"
					actionListener="#{devolucionBean.imprimirFactura}" ajax="false"
					oncomplete="PF('imprimir').hide()" icon="ui-icon-extlink" />

				<p:commandButton value="NO" oncomplete="PF('imprimir').hide()"
					actionListener="#{devolucionBean.cancelarTodo}"
					icon="ui-icon-extlink" />
			</h:form>
		</p:dialog>

		<script type="text/javascript">
			//<![CDATA[
			function comprobar(xhr, status, args) {
				if (!args.validationFailed && args.cerrar) {
					PF('personaDialogoNuevo').hide();
				}
			}

			function comprobarDialogoProducto(xhr, status, args) {
				if (args.error1) {
					PF('productoDialogoNuevo').show()
				}
			}
			function comprobarFactura(xhr, status, args) {
				if (args.error) {
					PF('clienteDialogoPago').show()
				}
			}
			//]]>

			function handleSubmitRequest(args) {
				if (!args.validationFailed) {
					PF('productoDialogoNuevo').hide();
				}
			}
		</script>
	</ui:define>

</ui:composition>
</html>